package net.zhengxinyun.performance.service.measurement;

import com.yunpian.sdk.model.Result;
import com.yunpian.sdk.model.SmsSingleSend;
import net.zhengxinyun.performance.entity.EvaluateUserEntity;
import net.zhengxinyun.performance.entity.MeasurementInformationEntity;
import net.zhengxinyun.performance.entity.QuestionEntity;
import net.zhengxinyun.performance.entity.UserEntity;
import net.zhengxinyun.performance.filter.EvaluateUserFilter;
import net.zhengxinyun.performance.filter.MeasurementInformationFilter;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * Created by hyp1202 on 2018/12/29.
 */
public interface AssessmentTestService {

    String insert(MeasurementInformationEntity measurementInformationEntity, List<QuestionEntity> list);

    String update(MeasurementInformationEntity measurementInformationEntity,List<QuestionEntity> list);

    String delete(MeasurementInformationEntity measurementInformationEntity);

    List<MeasurementInformationFilter> query(MeasurementInformationFilter measurementInformationFilter);

    Integer queryForCount(MeasurementInformationFilter measurementInformationFilter);

    HashMap<String,Object> queryForPaper(MeasurementInformationFilter measurementInformationFilter);

    HashMap<String, Object> queryForPaper(MeasurementInformationFilter measurementInformationFilter, EvaluateUserEntity evaluateUserEntity)throws Exception;

    String importMeasurement(MultipartFile file);

    MeasurementInformationEntity setFinalPoint(MeasurementInformationEntity measurementInformationEntity);

    List<MeasurementInformationFilter> queryForAnswer(MeasurementInformationFilter measurementInformationFilter);

    List<MeasurementInformationFilter> indexMeasurement();

    MeasurementInformationFilter indexSumScore(UserEntity userEntity);

    void start();

    void end();
}
